Skip to main content
POST
[Beta] screen an outbound payment before sending it

Authorizations

X-API-KEY
string
header
required

Authorization method required to allow user to access the api endpoints.

Body

application/json
client_entity_id
string
required

The client (an entity of type client) the payment is for.

Example:

"6859927c-292e-4077-8d6a-70542c00a267"

network
string
required

Network slug as the entity register uses it (eth, solana, arb1, …). Aliases such as ethereum are normalised.

Example:

"eth"

transfer_ref
string
required

Your id for this payment attempt: the idempotency key. Resending the same transfer_ref with the same request returns the stored decision (200, Idempotent-Replayed: true); with a different request, 409. A new attempt after a block needs a new transfer_ref.

Maximum string length: 128
Example:

"pay_8812"

counterparty_address
string

Where the payment goes. Required (or its deprecated alias destination_address).

Example:

"0x62348b9125085ee5286aa68a7a17d15f090192bd"

destination_address
string
deprecated

Deprecated alias of counterparty_address. Sending both naming different addresses is a 400.

amount
string

Amount in asset units (a decimal string, not base units).

Maximum string length: 78
Example:

"48000.00"

asset
string
Maximum string length: 32
Example:

"USDC"

Response

check_id
string
required
Example:

"6f1c2a9e-3b7d-4c55-9a0e-2d8f1e4b7c31"

direction
enum<string>
required
Available options:
inbound,
outbound
Example:

"outbound"

client_entity_id
string
required
Example:

"6859927c-292e-4077-8d6a-70542c00a267"

client_name
string
required
Example:

"Northwind Custody"

counterparty_address
string
required
Example:

"0x62348b9125085ee5286aa68a7a17d15f090192bd"

counterparty_name
string | null
required
Example:

null

network
string
required
Example:

"eth"

amount
string | null
required
Example:

"48000.00"

asset
string | null
required
Example:

"USDC"

transfer_ref
string | null
required
Example:

"pay_8812"

transaction_id
string | null
required
Example:

null

tx_hash
string | null
required
Example:

null

is_approved_counterparty
boolean
required
Example:

false

flagged
boolean
required
Example:

true

reasons
object[]
required
checks
object[]
required
case_id
string | null
required

The case the flag opened, null when it did not flag. A /v2/cases id: read and work it with GET /v2/cases/{id} (source_type transaction_screening).

Example:

"0d9c7a1e-5b3f-4a2e-8c6d-1f2e3a4b5c6d"

travel_rule_followup
object | null
required
created_at
string
required
Example:

"2026-10-07T09:12:03.120Z"

verdict
enum<string>

Outbound only, always present there. Send only on "allowed".

Available options:
allowed,
blocked
Example:

"blocked"

status
enum<string>

Inbound only: pending while a check is awaited, then clear or flagged. Release a quarantined deposit on clear.

Available options:
pending,
clear,
flagged
executed_at
string | null
Example:

null

cancelled_at
string | null
Example:

null

execution_case_id
string | null

The /v2/cases id of the case a blocked transfer sent anyway opened.

Example:

null